// ----------------------------------------------------------------------
// Проект: Аккорд Менеджер
// Автор: IceMan
// Дата создания:22 декабря 2009 г.
// Время:21:01:02
// Коментарий: Файл создан автоматически, не редактрировать!!!
// ----------------------------------------------------------------------
// <Описание>
// dd7cf404-693e-47d4-a69d-19cc7f4ec0ec
// <?xml version="1.0" encoding="utf-16"?>
//<БАРС_Описание Дата="22 декабря 2009 г." Время="21:01:02" Пользователь="IceMan" Машина="DEV-ICEMAN">
//  <ХранимыйТип Категория="Класс" Название="Аккорд.Клиент" Таблица="CLIENT" НаследуетьсяОт="Барс.ЭлементСправочника" Абстрактный="НЕТ" Финальный="НЕТ" Профилируемый="НЕТ" РазрешитьСсылкиНаКласс="ДА" КешироватьНаКлиенте="НЕТ" НомерКласса="a0a11619-2f65-4456-9925-e8e37b9fd612" Описание="Клиент">
//    <НазначениеКласса />
//    <Поле Название="Адрес" ПолноеНазвание="Адрес" Описание="Адрес" Тип="Строка" НазваниеВТаблице="ADDRESS" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="Телефон" ПолноеНазвание="Телефон" Описание="Телефон" Тип="Строка" НазваниеВТаблице="PHONE" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="ЭлектроннаяПочта" ПолноеНазвание="ЭлектроннаяПочта" Описание="ЭлектроннаяПочта" Тип="Строка" НазваниеВТаблице="IELEKTRONNAYAPOCHTA" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="КонтактноеЛицо" ПолноеНазвание="КонтактноеЛицо" Описание="КонтактноеЛицо" Тип="Строка" НазваниеВТаблице="KONTAKTNOELICO" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="Категория" ПолноеНазвание="Категория" Описание="Категория" Тип="Аккорд.КатегорияКлиента" НазваниеВТаблице="KATEGORIYA" ДлинаПоля="-1" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="Сайт" ПолноеНазвание="Сайт" Описание="Сайт" Тип="Строка" НазваниеВТаблице="SAIT" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Поле Название="Псевдоним" ПолноеНазвание="Псевдоним" Описание="Псевдоним" Тип="Строка" НазваниеВТаблице="PSEVDONIM" ДлинаПоля="2000" ТочностьПоля="-1" ВключатьВСсылку="НЕТ" ОбязательноеПоле="НЕТ" СозданАвтоматически="НЕТ" СтрокаФорматирования="" РегулярноеВыражение="" />
//    <Связь Название="Контакты" Описание="" Композитная="ДА" Идентификатор="045eb60d-9072-486e-8e96-b16a15254dd2" КлассЧасть="Аккорд.КонтактКлиента" КлассЦелое="Аккорд.Клиент" ПолеСвязи="Клиент" />
//  </ХранимыйТип>
//</БАРС_Описание>
// dd7cf404-693e-47d4-a69d-19cc7f4ec0ec
// </Описание>
namespace Аккорд
{
	using System;
	using System.Text;
	using Барс.Ядро;
	using Барс;
	using System.Collections.Generic;
	
	
	[БДАтрибутыКласса(ИмяТаблицы="CLIENT", Описание="Клиент", НомерКласса="a0a11619-2f65-4456-9925-e8e37b9fd612")]
	public partial class Клиент : Барс.ЭлементСправочника
	{
		
		private string _Адрес;
		
		private string _Телефон;
		
		private string _ЭлектроннаяПочта;
		
		private string _КонтактноеЛицо;
		
		private Аккорд.КатегорияКлиента _Категория;
		
		private string _Сайт;
		
		private string _Псевдоним;
		
		private Барс.Ядро.ПодчиненнаяВыборка<Аккорд.КонтактКлиента> _Контакты;
		
		[БДАтрибутыПоля("ADDRESS", Описание="Адрес", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("Адрес")]
		public virtual string Адрес
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._Адрес;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._Адрес != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("Адрес", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._Адрес = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._Адрес = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("PHONE", Описание="Телефон", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("Телефон")]
		public virtual string Телефон
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._Телефон;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._Телефон != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("Телефон", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._Телефон = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._Телефон = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("IELEKTRONNAYAPOCHTA", Описание="ЭлектроннаяПочта", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("ЭлектроннаяПочта")]
		public virtual string ЭлектроннаяПочта
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._ЭлектроннаяПочта;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._ЭлектроннаяПочта != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("ЭлектроннаяПочта", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._ЭлектроннаяПочта = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._ЭлектроннаяПочта = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("KONTAKTNOELICO", Описание="КонтактноеЛицо", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("КонтактноеЛицо")]
		public virtual string КонтактноеЛицо
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._КонтактноеЛицо;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._КонтактноеЛицо != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("КонтактноеЛицо", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._КонтактноеЛицо = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._КонтактноеЛицо = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("KATEGORIYA", Описание="Категория")]
		[System.ComponentModel.DisplayName("Категория")]
		public virtual Аккорд.КатегорияКлиента Категория
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._Категория;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._Категория != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("Категория", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._Категория = ((Аккорд.КатегорияКлиента)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._Категория = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("SAIT", Описание="Сайт", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("Сайт")]
		public virtual string Сайт
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._Сайт;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._Сайт != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("Сайт", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._Сайт = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._Сайт = value;
					}
				}
			}
		}
		
		[БДАтрибутыПоля("PSEVDONIM", Описание="Псевдоним", ДлинаПоля=2000)]
		[System.ComponentModel.DisplayName("Псевдоним")]
		public virtual string Псевдоним
		{
			get
			{
				this.ПроверитьНаЗагрузку();
				return this._Псевдоним;
			}
			set
			{
				this.ЗагрузитьСБлокировкой();
				if ((this._Псевдоним != value))
				{
					Барс.Ядро.АргументСобытияИзменениеПоля аргумент;
					аргумент = this.ВыполнитьСобытиеИзменениеПоля("Псевдоним", value);
					if ((аргумент != null))
					{
						if ((аргумент.Отменить != true))
						{
							this.объектИзменен = true;
							this._Псевдоним = ((string)(аргумент.НовоеЗначение));
						}
					}
					else
					{
						this.объектИзменен = true;
						this._Псевдоним = value;
					}
				}
			}
		}
		
		[БДОтношение("Контакты", "045eb60d-9072-486e-8e96-b16a15254dd2", "", true, typeof(Аккорд.КонтактКлиента), "Клиент")]
		public Барс.Ядро.ПодчиненнаяВыборка<Аккорд.КонтактКлиента> Контакты
		{
			get
			{
				if ((this._Контакты == null))
				{
					this._Контакты = Барс.Ядро.ПодчиненнаяВыборка<Аккорд.КонтактКлиента>.ПолучитьВыборкуПодчиненнуюОбъекту(new System.Guid("045eb60d-9072-486e-8e96-b16a15254dd2"), this);
				}
				return this._Контакты;
			}
		}
	}
}
